package com.zhijiang.hospital.entity;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * @TableName CHECKIN
 */
@Data
public class Checkin implements Serializable {

    private static final long serialVersionUID = 1L;
    /**
     *
     */
    @ExcelIgnore
    private String code;
    /**
     * 用户id
     */
    @ExcelIgnore
    private String userid;
    /**
     * 打卡方式
     */
    @ColumnWidth(20) // 定义列宽
    @ExcelProperty(value = {"打卡类型"}, index = 6)
    private String clockType;
    /**
     * 打卡地点
     */
    @ColumnWidth(20) // 定义列宽
    @ExcelProperty(value = {"打卡地点"}, index = 5)
    private String locationDetail;
    /**
     * 经度
     */
    @ExcelIgnore
    private String lng;
    /**
     * 纬度
     */
    @ExcelIgnore
    private String lat;
    /**
     * 打卡时间毫秒值
     */
    @ExcelIgnore
    private String checkinTime;
    /**
     * 打卡结束时间
     */
    @ExcelIgnore
    private String endTime;
    /**
     * 打卡开始时间
     */
    @ExcelIgnore
    private String startTime;
    /**
     * 企业名称
     */
    @ColumnWidth(20) // 定义列宽
    @ExcelProperty(value = {"打卡企业名称"}, index = 4)
    private String locationTitle;
    /**
     * 签到时间
     */
    @ColumnWidth(20) // 定义列宽
    @ExcelProperty(value = {"打卡时间"}, index = 3)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date checkinDate;
    /**
     * 用户名
     */
    @ColumnWidth(20) // 定义列宽
    @ExcelProperty(value = {"打卡人员姓名"}, index = 1)
    private String name;
    @ColumnWidth(20) // 定义列宽
    @ExcelProperty(value = {"打卡人员部门"}, index = 2)
    private String deptName;
}
